package cn.tedu.net.collection.basic;

import java.util.Scanner;

/**本类用来测试switch结构
 *
 * 总结:执行的顺序
 * 1.先拿到表达式的值(a),然后将a的值与case的值依次进行匹配
 * 2.当成功匹配到case的值后,会执行case后的代码
 * 3.判断此行代码是否有break,如果有,结束执行,如果没有,会继续向后穿透所有case,包括default
 * 4.如果没有匹配到任何的case,只会执行default的代码
 * */
public class Test5_Switch {
    //1.创建入口函数main Alt+/补全代码
    public static void main(String[] args) {
        System.out.println("输入你心中的号码:");
        int a = new Scanner(System.in).nextInt();
        /**总结1:a 可以支持5种数据类型:byte short char int
         * jdk1.5以后支持String*/
        switch(a){
            case 1 : System.out.println(1);break;
            case 2 : System.out.println(2);break;
            /**总结2:break表示结束当前的case,如果不加break
             * 会向后穿透所以的case,包括default*/
            case 3 : System.out.println(3);break;
            case 4 : System.err.println(4);break;
            /**总结3:default是保底选项,可加可不加
             * default是如果没有case被匹配到时执行的默认选项
             * 如果在default之前遇到了break,default不会执行*/
            default: System.err.println(0);break;
        }

        String s ="Monday";
        switch (s) {
            case "Monday":
                System.out.println("星期一吃火锅");
                break;
            case "Tuesday":
                System.out.println("星期二吃水煮鱼");
                break;
            case "Wedsday":
                System.out.println("星期三吃大米饭");
                break;
            case "Thursday":
                System.out.println("星期四吃麻辣香锅");
                break;
            case "Friday":
                System.out.println("星期五吃汤圆");
                break;
            case "Saturday":
                System.out.println("星期六吃汉堡");
                break;
            case "Sunday":
                System.out.println("星期天吃满汉全席");
                break;
            default:
                System.out.println("哪天都吃好吃的");
                break;
        }

    }
}
